- AI coding tools like GitHub Copilot have transformed software development and productivity.
- AI assistants close experience gaps, although they may lead to less secure, bug-prone code.
- Software engineering skills, like creating smart architecture for code, will still be relevant.
Before he graduated from university, Jacob Jackson founded the AI coding assistant TabNine in 2018. Jackson, a computer science student, wanted to reduce the repetitive, sometimes boring tasks that a programmer could encounter.
"We were just trying to save people keystrokes. There was no talk of AI designing or writing full algorithms," he said.
His startup eventually raised about $60 million and was acquired by the Israeli company Codota in 2019. Jackson continued to work with AI, going on to intern and work at OpenAI, the company that built ChatGPT.
In the past two years, there has been a boom in AI coding assistants. OpenAI competitors have launched widely used generative AI developer tools, such as GitHub Copilot and Anthropic's Claude. The spike in ChatGPT usage and AI coding assistants has shifted how software developers do their jobs. Using AI to write code could also close the experience gap between more entry-level junior developers and senior developers, as it typically takes several years of work and even personal projects to level up.
"There's no such thing as junior developers anymore because AI basically elevates everybody to be beyond that," said Nikolas Gauvreau, who has worked as a developer in Canada for more than 20 years.
More than 97% of 2,000 respondents across the US, Brazil, Germany, and India said that they have used AI coding tools at work, according to a GitHub survey published in August. Generative AI code suggestion tools can also increase software developer productivity by 26%, according to a study that analyzed data from Microsoft, Accenture, and an anonymous Fortune 100 electronics manufacturing company.
Developers say that adopting AI coding assistants will accelerate the field of software engineering rather than eliminate jobs, like how calculators accelerated math computing despite initial protests by teachers against its adoption.
While these tools can increase productivity, they may also introduce security issues that create more work for developers. According to a 2022 study led by Stanford University cryptography professor Dan Boneh, people who use an AI assistant write significantly less secure code than those without access to those tools. While AI assistants can accelerate the coding process, they may create more bugs that require the human overseer to intervene.
AI assistants can empower coders
Most generative AI coding assistants focus on auto-completion, meaning that the tool suggests code as the programmer types. Other language learning models (LLMs) require prompt engineering, where the user can then apply the AI's suggested code as a starting point for their idea, depending on the complexity of the problem they want to solve.
Before the advent of coding assistants, DeepAI founder Kevin Baragona always had a Google search engine window pulled up in case he needed help solving a problem. Programmers often did research from resources like Stack Overflow, an online community forum where coders would share their solutions. Stack Overflow's traffic has fallen since the rise of coding assistants.
"Every few minutes when you're programming, that was sort of like the cheat code back then, and that just became normalized as what you do when you're coding: you Google a lot," said Baragona.
Knowing more than one coding language, such as JavaScript, Python, or Ruby, gives a programmer more flexibility in the job market when companies shift their priorities. Learning a completely new language, though, would require lots of time and learning.
Now, deep learning models have allowed for more programming functions to be translated from one language to another, making it easier for developers to switch between programming languages without having to quickly learn them. Baragona said these tools make him feel like he knows "every programming language, even though I don't, because AI will help me get over the hump really quickly."
Gauvreau said AI coding assistants have empowered him because he feels less afraid to take on more clients even when he may not know the solution yet. He said he's doubled the number of languages he learned in the last year, more than his entire career.
AI can help computer science students
Instead of shying away from coding assistants, some universities developed their own versions that would help steer students toward asking the right questions – another way AI tools can close the skills gap.
David Malan, a professor who oversees the popular CS50 Introduction to Computer Science course at Harvard University and online on edX, helped spearhead the creation of the cs50.ai chatbot for the course. Malan said that AI programs are "all too willing to answer any and all of your questions, but not in a way that is probably consistent with what a good teacher or tutor would prefer that you do."
"The goal is to really teach students how to think and how to solve problems with the tools we currently have and will eventually have when it comes to the real world and application of software," Malan told Business Insider.
AI coding assistants can especially help the class's online students, who may not necessarily have the luxury of a teacher's assistant, have a "virtual tutor by their side," Malan said.
AI has shortcomings
While Baragona said AI coding will become a day-to-day reality for the next generation of coders, he thinks that it's training programmers to be lazier, which could create problems that they won't know how to solve.
"You quickly get to a point where the AI did all the work, but it still has bugs, and you don't understand the code at all because you didn't write it," he said.
Once the code reaches a certain level of complexity, he finds that the AI has dug a hole deep enough that it can't get out.
"And at that point, you're actually really screwed because you can't understand the code, you can't fix it, and neither can the AI," he said.
Programmers for studios under Microsoft have been encouraged to adopt Microsoft Copilot as a coding assistant, according to one Activision Blizzard contractor, whose identity BI has confirmed and who asked to remain anonymous because he's not authorized to speak to the press. Still, he said he needs to be very specific when working with Copilot.
"AI doesn't have a vision of what you're trying to build because coding is really like building a building. AI can build you one little piece," he told BI. "We actively tried to use Copilot in our trials, but it just was not good."
While many developers have chosen to delegate specific coding tasks to AI to reduce their workloads, they say establishing strong fundamentals in computer science and software engineering will continue to be relevant.
Software engineers don't just code; they also solve problems and design systems. In this case, humans still have some edge.
"The AI tools today, they don't create thoughtful architectures the way a human would. They kind of code with short-term thinking," Baragona said.